This application claims the priority of Korean Patent Application No. 2003-9771, filed on Feb. 17, 2003, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety by reference.
1. Field of the Invention
The present invention relates to a method, apparatus, and medium for operating a Read Only Memory (ROM) drive, and more particularly, to a method, apparatus, and medium for processing data in a Read Only Memory (ROM) drive capable of preventing deterioration of data readability and error generation caused by speed deterioration of a ROM drive, caused by defects of an optical recording medium.
2. Description of the Related Art
After the development of audio CDs, various additional types of media have been developed, according to various social demands.
FIG. 1 is a flow chart illustrating a method of processing data in a Read Only Memory (ROM) drive, according to a conventional technique, wherein the ROM drive reads data from an optical recording medium and transmits the data to a host computer.
Referring to FIG. 1, if the ROM drive receives a command requiring data from the host computer, the ROM drive checks whether the corresponding data exists in the buffer thereof (operation 100). If the data required by the host computer does not exist in the buffer, the ROM drive sets the buffer to an Empty state and sets a target location on an optical recording medium where the corresponding data exists (operation 101). Then, the ROM drive controls an optical pick-up to seek the target location. Thereafter, the ROM drive determines whether the optical pick up has found the target location (operation 102). If the optical pick-up has found the target location, the corresponding data at the target location is read, buffered, decoded, and then transmitted to the host computer (operations 103 and 104). However, in a case where defects such as scratches or black dots, for example, exist on the optical recording medium, the optical pick-up cannot correctly seek the target location. In this case, the ROM drive reduces a predetermined count, which is set according to the speed at which it runs, using a counter, and then decreases the speed (operations 105 and 106). Here, the counter counts a retry count of a process of the corresponding data at the target location being detected, buffered, and decoded. The retry count is predetermined, according to a speed of the ROM drive. Then, it is determined whether the ROM drive is operating at the lowest speed (operation 107). If data detection, data buffering, or data decoding fails when the ROM drive operates at the lowest speed, an error is generated and transmitted to the host computer (operation 108). In operation 100, if the corresponding data exists in the buffer, the process jumps to operation 104 to decode the corresponding data stored in the buffer and transmit the decoded data to the host computer.
The conventional method for processing data in the ROM drive as described above is also disclosed in U.S. Pat. No. 5,528,574.
In summary, according to the conventional method, the ROM drive reads data while gradually decreasing the speed of the optical recording medium, if defects such as scratches or black dots, for example, are present on the optical recording medium when reading data from the optical recording medium. If the ROM drive cannot read the data even at its lowest speed, the ROM drive generates an error. However, when data should be read at a faster speed than at a current speed in a certain area on the optical recording medium, the conventional method cannot read the data, thereby generating errors and deteriorating the quality of the ROM drive.
Embodiments of the present invention include a method, apparatus, and medium for processing data in a ROM drive preventing deterioration of data readability and error generation caused by speed deterioration of the ROM drive, from defects on an optical recording medium.
Additional aspects and/or advantages of the invention will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the invention.
To accomplish the above and/or other aspects and advantages, embodiments of the present invention provide a method of processing data, including detecting, buffering, and decoding data at a target location on an optical recording medium, checking a CLV speed of a drive for the optical recording medium, adjusting a CAV speed of the drive for the optical recoding medium, and retrying data detection, data buffering, and data decoding if one of the data detection, data buffering, and data decoding fail, and transmitting the decoded data to a host computer if the data detection, data buffering, and data decoding are performed successfully.
The adjusting of the CAV speed and retrying of the data detection, data buffering, and data decoding may further include adjusting the CAV speed of the optical recording medium to a lowest speed if the CLV speed of the optical recording medium is above a predetermined speed, retrying data detection, data buffering, and data decoding at the lowest CAV speed, and retrying data detection, data buffering, and data decoding while reducing an offset between the target location and a reference location if one of the data detection, data buffering, and data decoding fail.
Further, in the retrying of the data detection, data buffering, and data decoding, the data detection, data buffering, and data decoding are retried while reducing the offset from the target location and the reference location by a predetermined distance.
If one of the data detection, data buffering, and data decoding fail in the adjusting of the CAV speed and the retried data detection, data buffering, and data decoding, the determination of the successful data detection, data buffering, and data decoding performance may include retrying data detection, data buffering, and data decoding, while reducing the CLV speed of the drive for the optical recording medium. Further, in the retrying of the data detection, data buffering, and data decoding while reducing the CLV speed of the drive, data detection, data buffering, and data decoding can be performed until the CLV speed of the optical recording medium reaches the lowest CLV speed. If one of the data detection, data buffering, and data decoding fail, the drive may also transmit information indicating an error to the host computer.
To accomplish the above and/or other aspects and advantages, embodiments of the present invention provide a data processing system, including a host having an input and a CPU, and a drive for reading from and/or writing to a recording medium, including a controller, a driver and an interface interfacing with the host through the input, wherein the controller checks a CLV of the drive for the recording medium, controls an adjustment of a CAV speed of the drive for the recording medium, and controls another attempt to detect data, buffer data, and/or decode data from the recording medium when a previous attempt failed.
To accomplish the above and/or other aspects and advantages, embodiments of the present invention may further provide a medium including computer readable code controlling an operation of a drive, to detect, buffer, and/or decode data at a target location on a recording medium, check a CLV speed of the drive for the recording medium, adjust a CAV speed of the drive for the recoding medium, and retry data detection, data buffering, and/or data decoding if one of the data detection, data buffering, and data decoding fail, and transmit the decoded data to a host computer if the data detection, data buffering, and data decoding are performed successfully.